<?php

namespace App\Music\Faith;

use Hyperf\Di\Annotation\Inject;
use Hyperf\Guzzle\ClientFactory;

/**
 * 网易云音乐api
 * */
class NetEaseMusicApi implements MusicApi
{

    /**
     * @var ClientFactory
     */
    private $clientFactory;
    /**
     * @var array|string[]
     */
    private array $headers;

    #[Inject]
    protected TencentFormat $tencentFormat;

    public function __construct(ClientFactory $clientFactory)
    {
        $this->clientFactory = $clientFactory;
        $this->headers = [
            'User-Agent' => 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)',
            'Referer' => 'https://y.qq.com/',
            'Host' => 'u.y.qq.com',
            'TE' => 'trailers',
        ];
    }

    public function search($keyword, $type, $offset = 1, $limit = 20): array
    {
        // TODO: Implement search() method.
    }

    public function playList(string $id): array
    {
        // TODO: Implement playList() method.
    }

    public function artist(string $artistId): array
    {
        // TODO: Implement artist() method.
    }

    public function album(string $id): array
    {
        // TODO: Implement album() method.
    }

    public function song(string $songId): array
    {
        // TODO: Implement song() method.
    }

    public function lyric(string $songId, int $type): string
    {
        // TODO: Implement lyric() method.
    }

    public function url(string $songId): string
    {
        // TODO: Implement url() method.
    }

    public function topCategory(): array
    {
        // TODO: Implement topCategory() method.
    }

    public function top($period, $offset = 1, $limit = 20): array
    {
        // TODO: Implement top() method.
    }

    public function setCookie($cookie): array
    {
        // TODO: Implement setCookie() method.
    }

    public function getCookie(): string
    {
        // TODO: Implement getCookie() method.
    }
}